package cn.com.view;

import java.awt.BorderLayout;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.image.BufferedImage;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JSplitPane;
import javax.swing.JTextArea;

import czr.time.ll.ChinaDate;

public class DateGUI extends Thread {

	String image[] = { "img/0.jpg", "img/1.jpg", "img/2.jpg", "img/3.jpg",
			"img/4.jpg", "img/5.jpg", "img/6.jpg", "img/7.jpg", "img/8.jpg",
			"img/9.jpg" };
//	private JFrame frame;// 窗体对象
	private JButton but1;// 按钮一
	private JButton but2;// 按钮二
	private JLabel label;// 显示 时间
	private JLabel label2;// 显示日期
	private JTextArea textArea;
	private JDialog dialog;

	String time;// 时间格式
	String yer;// 日期格式
	String day;// 日

	public DateGUI() {
		

	}

	/**
	 * 线程体
	 */
	public void run() {
		while (true) {
			Date date = new Date();// 得到系统日期
			SimpleDateFormat simpleDate = new SimpleDateFormat("HH:mm:ss");// 日期格式
			SimpleDateFormat simpleDate2 = new SimpleDateFormat(
					"yyyy年MM月dd日     E");// 日期格式
			SimpleDateFormat dayDate = new SimpleDateFormat("dd");// 日期格式

			time = simpleDate.format(date); // 时间格式
			yer = simpleDate2.format(date);// 日期格式
			day = dayDate.format(date);// 天，多少号

			setTime(time, yer);// 更新时间
			updateImage(day);// 更新日期
			
			try {
				this.sleep(1000);
			} catch (InterruptedException e) {
				e.printStackTrace();
			} finally {
			}
		}

	}

	/**
	 * 更新按键图片
	 * 
	 * @param day
	 */
	public void updateImage(String day) {
		int intDay = Integer.parseInt(day);// 日期转换成整数
		int number1 = intDay / 10;//
		int number2 = intDay % 10;//
		ImageIcon icon1 = new ImageIcon(image[number1]);
		ImageIcon icon2 = new ImageIcon(image[number2]);
		but1.setIcon(icon1);
		but1.updateUI();// 刷新
		but2.setIcon(icon2);
		but2.updateUI();// 刷新
	}

	/**
	 * 创建一个按键
	 * 
	 * @param image
	 */
	public JButton createJButton(String image) {
		JButton button = new JButton();
		return button;
	}

	/**
	 * 更新时间
	 * 
	 * @param time
	 */
	public void setTime(String time, String yer) {
		label.setText("当前时间：" + time);
//		label2.setText(yer);
	}

	/**
	 * 创建 分割面板
	 * 
	 * @return
	 */
	public JSplitPane createJSplitPane() {
		but1 = createJButton("img/0.jpg");// 创建图片按键
		but2 = createJButton("img/0.jpg");// 创建图片按键

		JSplitPane splitPane = new JSplitPane();// 创建分分割面板
		splitPane.setDividerSize(0);// 设置分割条大小
		splitPane.setDividerLocation(130);// 设置分割条位置
		splitPane.setLeftComponent(but1);// 图片按钮一增加到分割面板
		splitPane.setRightComponent(but2);// 图片按钮二增加到分割面板
		return splitPane;
	}

	/**
	 * 创建窗体
	 * 
	 */
	public void createJframe() {
		dialog = new JDialog();// 创建 窗体对象
//		dialog.setSize(260, 300);// 设置窗体大小
		dialog.setBounds(1300, 20, 260, 300);
		dialog.setLayout(new BorderLayout());// 边界布局
		label = new JLabel();// 创建一个标签对象
		label.setHorizontalAlignment(label.CENTER);// 设置文本剧中
		dialog.add(label, new BorderLayout().NORTH);// 增加到窗体北面
		label2 = new JLabel();// 创建一个标签对象
		label2.setHorizontalAlignment(label.CENTER);// 设置文本剧中
		dialog.add(label2, new BorderLayout().SOUTH);// 增加到窗体北面
		
		textArea = new JTextArea(2,1);// 创建一个标签对象
//		textArea.setHorizontalAlignment(JTextArea.CENTER);// 设置文本剧中
		dialog.add(textArea, new BorderLayout().SOUTH);// 增加到窗体北面

		dialog.add(createJSplitPane(), new BorderLayout().CENTER);// 滚动面板
		dialog.setDefaultCloseOperation(dialog.DISPOSE_ON_CLOSE);// 设置窗体关闭
//		dialog.setLocationRelativeTo(null);// 窗体剧中
		//去掉JAVA图标
		dialog.setIconImage(new BufferedImage(1, 1, BufferedImage.TYPE_INT_ARGB));
		dialog.setVisible(true);// 窗体可见
		
		ChinaDate cd = new ChinaDate();
		textArea.setText(cd.today());
		
		dialog.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
		dialog.addWindowListener(new WindowAdapter() {
		public void windowClosing(WindowEvent e) {
		System.exit(0);
		}
		});
	}
	
	

	/**
	 * 主方法
	 * 
	 * @param args
	 */
	public static void main(String[] args) {
		DateGUI date = new DateGUI();
		date.createJframe();
		date.start();
	}
}
